package dao;

import java.util.ArrayList;
import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.classic.Session;
import org.hibernate.criterion.Restrictions;

import to.ArquivoAnexo;
import util.HibernateUtil;

public class AnexoDAO {

	public List<ArquivoAnexo> listaArquivosAnexadosPorMsg(Integer idMsg) {

		List<ArquivoAnexo> listaRetorno = new ArrayList<ArquivoAnexo>();
		Session session = null;

		try {
			
			session = HibernateUtil.getSessionFactory().openSession();
			Criteria criteria = session.createCriteria(ArquivoAnexo.class,
					"arq").createAlias("arq.msg", "msg");
			criteria.add(Restrictions.eq("msg.id", idMsg));
			listaRetorno = (List<ArquivoAnexo>) criteria.list();
			
		} catch (Exception e) {
			e.printStackTrace();
		}

		return listaRetorno;

	}
	
	public List<ArquivoAnexo> listaTodosArquivosAnexados() {

		List<ArquivoAnexo> listaRetorno = new ArrayList<ArquivoAnexo>();
		Session session = null;

		try {
			
			session = HibernateUtil.getSessionFactory().openSession();
			Criteria criteria = session.createCriteria(ArquivoAnexo.class,
					"arq").createAlias("arq.msg", "msg");
			listaRetorno = (List<ArquivoAnexo>) criteria.list();
			
		} catch (Exception e) {
			e.printStackTrace();
		}

		return listaRetorno;

	}

}
